

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>CVS with Remote Repositories [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Version Control,Version Control CVS Remote Repository,CVS,CVS Remote Repository">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">CVS with Remote Repositories</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="version_control_with_cvs.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="versioncontroloptionscvs.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_BodyText"><span class="f_BodyText">Before you can connect to a remote repository, you must:</span></p>
<ul style="text-indent: 0px; margin-left: 30px; list-style-position: outside;">
<li><span class="f_Bulletlist1">Have version control setup on your local machine</span></li>
<li><span class="f_Bulletlist1">Have version control setup on a remote server</span></li>
<li><span class="f_Bulletlist1">Have a </span><span class="f_Bulletlist1">working directory</span><span class="f_Bulletlist1"> on your local machine that points to the repository on the server.</span></li>
</ul>
<p class="p_BodyText"><span class="f_BodyText">To set up CVS version control with a remote repository, follow the steps below:</span></p>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=1><span class="f_NumberedList">Ask your system administrator to install CVS and create a remote repository with a module that you can use to control your Enterprise Architect package files. Your administrator must create a username and password for you before you can make a connection.</span></li>
<li value=2><span class="f_NumberedList">Open a command prompt window and navigate to, or create, a suitable directory to hold your CVS working copy directory; for example:</span></li>
</ol>
<p class="p_Bulletlist3"><span class="f_Code">C:\&gt; cd myCVSWorkSpace</span></p>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=3><span class="f_NumberedList">Connect to the remote CVS repository. An example connection command is:</span></li>
</ol>
<p class="p_Bulletlist3"><span class="f_Code">C:\myCVSWorkSpace&gt; cvs -d:pserver:myUserID@ServerName:/repositoryFolder login</span></p>
<div style="text-align: left; text-indent: -21px; padding: 0px 0px 0px 0px; margin: 5px 0px 0px 48px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="955" bgcolor="#efeff7" style="width:955px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="955" bgcolor="#f7f7ff" style="width:955px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">Replace </span><span class="f_Code">myUserID</span><span class="f_TiporNoteText"> with your CVS username, replace </span><span class="f_Code">ServerName</span><span class="f_TiporNoteText"> with the name of your CVS server and replace </span><span class="f_Code">repositoryFolder</span><span class="f_TiporNoteText"> with the path to the repository on the server.</span></p>
</td>
</tr>
</table>
</div>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=4><span class="f_NumberedList">Create a local CVS workspace, derived from the remote repository. An example command is:</span></li>
</ol>
<p class="p_Bulletlist3"><span class="f_Code">C:\myCVSWorkSpace&gt; cvs -d:pserver:myUserID@ServerName:/cvs checkout moduleName</span></p>
<div style="text-align: left; text-indent: -21px; padding: 0px 0px 0px 0px; margin: 5px 0px 0px 48px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="955" bgcolor="#efeff7" style="width:955px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="955" bgcolor="#f7f7ff" style="width:955px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">The above command creates a subdirectory in your current working directory, called </span><span class="f_Code">moduleName</span><span class="f_TiporNoteText">. (Replace </span><span class="f_Code">moduleName</span><span class="f_TiporNoteText"> with the name of the module created by your system administrator). It creates local copies of all files contained in the CVS module found at </span><span class="f_Code">ServerName:/cvs</span><span class="f_TiporNoteText" style="font-style: italic;">.</span></p>
<p class="p_TiporNoteText"><span class="f_TiporNoteText">It also creates a subdirectory beneath </span><span class="f_Code">moduleName</span><span class="f_TiporNoteText">, called </span><span class="f_TiporNoteText" style="font-style: italic;">CVS</span><span class="f_TiporNoteText">. This subdirectory contains a file called </span><span class="f_Code">Root</span><span class="f_TiporNoteText">, that contains your CVS connection information. Enterprise Architect uses this file to obtain your CVS user ID.</span></p>
</td>
</tr>
</table>
</div>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=5><span class="f_NumberedList">Verify that your CVS installation is working correctly.</span></li>
<li value=6><span class="f_NumberedList">Change directory to the one you specified as the working copy, in the </span><span class="f_Code">cvs checkout</span><span class="f_NumberedList"> command above; that is, </span><span class="f_Code">C:\myCVSWorkSpace\moduleName</span></li>
<li value=7><span class="f_NumberedList">Now create a test file, e.g. </span><span class="f_NumberedList" style="font-weight: bold;">Test.txt</span><span class="f_NumberedList">, containing the text </span><span class="f_NumberedList" style="font-style: italic;">CVS Test</span><span class="f_NumberedList">. You can do this with the command:</span></li>
</ol>
<p class="p_Bulletlist3"><span class="f_Code">echo CVS Test &gt; Test.txt</span></p>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=8><span class="f_NumberedList">Execute the following CVS commands:</span></li>
</ol>
<ul style="text-indent: 0px; margin-left: 65px; list-style-position: outside;">
<li><span class="f_Code">cvs add Test.txt</span></li>
<li><span class="f_Code">cvs commit -m&quot;Commit comment&quot; Test.txt</span></li>
<li><span class="f_Code">cvs update Test.txt</span></li>
<li><span class="f_Code">cvs edit Test.txt</span></li>
<li><span class="f_Code">cvs editors Test.txt</span></li>
</ul>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=9><span class="f_NumberedList">The </span><span class="f_Code">editors</span><span class="f_NumberedList"> command should produce output resembling the following:</span></li>
</ol>
<p class="p_Bulletlist3"><span class="f_Code">Test1.txt myUserID Tue Aug 9 10:08:43 2009 GMT myComputer C:\myCVSWorkSpace\moduleName</span></p>
<ol style="text-indent: 0px; margin-left: 48px; list-style-position: outside;">
<li value=10><span class="f_NumberedList">Take note of the </span><span class="f_Code">userID</span><span class="f_NumberedList"> that follows the filename. Enterprise Architect must find and use this user ID when you create your version control configuration. (See the example dialog below.)</span></li>
<li value=11><span class="f_NumberedList">Launch Enterprise Architect and open or create the model containing the packages to place under version control.</span></li>
<li value=12><span class="f_NumberedList">Select the </span><span class="f_MenuKeyField">Project | Version Control | Version Control Settings</span><span class="f_NumberedList"> menu option. The </span><span class="f_UIControl">Version Control Settings</span><span class="f_NumberedList"> dialog displays.</span></li>
<li value=13><span class="f_NumberedList">Click on the </span><span class="f_MenuKeyField">New</span><span class="f_NumberedList"> button</span><span class="f_NumberedList">, enter a suitable name in the </span><span class="f_MenuKeyField"><a href="cvswithremoterepositories.htm#UniqueID">Unique ID</a></span><span class="f_NumberedList"> field, then click on the </span><span class="f_MenuKeyField">CVS</span><span class="f_NumberedList"> radio button in the </span><span class="f_MenuKeyField">Type</span><span class="f_NumberedList"> field.</span><br>
<span class="f_NumberedList">&nbsp;</span><br>
<img src="dlgvcconfigscvs.png" width="523" height="650" border="0" alt="DlgVCConfigsCVS"><br>
<span class="f_NumberedList">&nbsp;</span></li>
<li value=14><span class="f_NumberedList">To specify the </span><span class="f_MenuKeyField"><a href="cvswithremoterepositories.htm#WorkCopy">Working Copy path</a> </span><span class="f_NumberedList">value, click on the </span><span class="f_MenuKeyField">Select Path</span><span class="f_NumberedList"> button. Select the local folder in which to keep local working copies of the XML files to be stored in the Version Control repository.</span><br>
<span class="f_NumberedList">&nbsp;</span><br>
<img src="cvspathremote.png" width="303" height="321" border="0" alt="CVSPathRemote"><br>
<span class="f_NumberedList">&nbsp;</span></li>
<li value=15><span class="f_NumberedList">Click on the </span><span class="f_MenuKeyField">OK</span><span class="f_NumberedList"> button to return to the </span><span class="f_UIControl">Version Control Settings</span><span class="f_NumberedList"> dialog.</span></li>
<li value=16><span class="f_NumberedList">The </span><span class="f_MenuKeyField"><a href="cvswithremoterepositories.htm#CurrentUser">Current User</a></span><span class="f_NumberedList"> field should display the user name used to log into the remote CVS repository. If this does not happen, it indicates that Enterprise Architect cannot extract the user name from the file </span><span class="f_NumberedList" style="font-style: italic;">.</span><span class="f_Code">..\WorkingCopyPath\CVS\Root</span><span class="f_NumberedList"> and the configuration does not work correctly.</span></li>
<li value=17><span class="f_NumberedList">If necessary, set the </span><span class="f_MenuKeyField"><a href="cvswithremoterepositories.htm#CVSExe">CVS Exe Path</a></span><span class="f_NumberedList"> by clicking on the </span><span class="f_MenuKeyField">Select Path... </span><span class="f_NumberedList">button and browsing to the file path for the for file </span><span class="f_Code">cvs.exe</span><span class="f_NumberedList">, the CVS executable.</span></li>
<li value=18><span class="f_NumberedList">Click on the </span><span class="f_MenuKeyField">Save</span><span class="f_NumberedList"> button to save the configuration you have defined. The new configuration is added to the list of </span><span class="f_UIControl">Defined Configurations</span><span class="f_NumberedList">.</span></li>
</ol>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="955" bgcolor="#efeff7" style="width:955px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="955" bgcolor="#f7f7ff" style="width:955px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">A new entry is also created in the </span><span class="f_TiporNoteText" style="font-style: italic;"><a href="localpathdlg.htm">Local Paths</a></span><span class="f_TiporNoteText"> list, with the same ID as the new version control configuration. The </span><span class="f_MenuKeyField">Local Path</span><span class="f_TiporNoteText"> entry records the Local Project path, for use in subsequent path substitutions.</span></p>
</td>
</tr>
</table>
</div>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="0" border="0" style="border: none; border-spacing:0px; border-collapse: collapse;">
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" bgcolor="#e3e6ed" style="width:187px; background-color:#e3e6ed; border: solid 1px #000000;"><p class="p_Tableheader"><span class="f_Tableheader">Options</span></p>
</td>
<td valign="top" width="570" bgcolor="#e3e6ed" style="width:570px; background-color:#e3e6ed; border: solid 1px #000000;"><p class="p_Tableheader"><span class="f_Tableheader">Use to</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">This model is Private</span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Specify whether all users connect to a single shared copy of the model (e.g. a DBMS) or each user connects to their own private copy of the model.</span></p>
<p class="p_Tabletext"><span class="f_Tabletext">When unselected (for shared models), the option disables the </span><span class="f_Tabletext" style="font-weight: bold;">File History - Retrieve</span><span class="f_Tabletext"> functionality when the selected package is checked out by another user. This prevents modifications that might have been made by the other user from being discarded through importing a prior revision from version control.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">Save nested version controlled packages to stubs only</span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Set nested version controlled packages to stubs or fully expanded trees. Defaults to selected.</span></p>
<p class="p_Tabletext"><span class="f_Tabletext">For a full explanation of this option, see the </span><span class="f_Tabletext" style="font-style: italic;"><a href="usingnestedversioncontrolp.htm">Version Control Nested Packages</a></span><span class="f_Tabletext"> topic.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">Unique ID<a name="uniqueid"></a></span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Specify a configuration name that readily distinguishes it from other configurations. The unique ID displays as a selection in a list of Version Control configurations a package can connect to. In addition it is possible to select a previous version control configuration from this drop-down menu providing the configuration is not in use in the current model.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">Working Copy Path<a name="workcopy"></a></span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Specify the folder where the XML files representing the packages are stored. This folder should already exist before it is specified here.</span></p>
<p class="p_Tabletext"><span class="f_Tabletext">Every version control configuration you define in Enterprise Architect, should have its own local working copy folder in which to store working copies of the XMI package files; this should not be a shared network folder. Particularly bear this in mind if you are creating a .EAP file which is to be shared (e.g. a SQL database).</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">Current User<a name="currentuser"></a></span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Specify the CVS user name associated with all CVS commands that are issued. This name is used by Enterprise Architect, to determine who has a package 'checked-out'.</span></p>
</td>
</tr>
<tr style="text-align:left;vertical-align:top;">
<td valign="top" width="187" style="width:187px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext" style="font-weight: bold;">CVS EXE Path<a name="cvsexe"></a></span></p>
</td>
<td valign="top" width="570" style="width:570px; border: solid 1px #000000;"><p class="p_Tabletext"><span class="f_Tabletext">Specify the full path of the CVS client's executable file.</span></p>
</td>
</tr>
</table>
</div>
<div style="text-align: left; text-indent: 0px; padding: 0px 0px 0px 0px; margin: 5px 0px 5px 13px;"><table cellspacing="0" cellpadding="2" border="0" style="border: none; border-spacing:0px;">
<tr style="text-align:left;vertical-align:bottom;">
<td valign="bottom" width="955" bgcolor="#efeff7" style="width:955px; background-color:#efeff7;"><p class="p_TiporNote" style="border-top: none; border-right: none; border-left: none;"><span class="f_TiporNote">Note:</span></p>
</td>
</tr>
<tr style="text-align:left;">
<td width="955" bgcolor="#f7f7ff" style="width:955px; background-color:#f7f7ff;"><p class="p_TiporNoteText"><span class="f_TiporNoteText">Sparx Systems strongly urge you not to manipulate version controlled package files outside of Enterprise Architect. It is possible to leave the package files in a state that Enterprise Architect cannot recognize.</span></p>
</td>
</tr>
</table>
</div>




            </div>
          </div>
        </div>



</div>


</body>
</html>
